package com.atguigu.schedule.service;

import com.atguigu.schedule.pojo.SecurityQuestion;
import com.atguigu.schedule.pojo.SecurityAnswersRequest;
import com.atguigu.schedule.pojo.PasswordResetRequest;

import java.util.List;

/**
 * 密码重置服务接口
 */
public interface PasswordResetService {
    
    /**
     * 获取所有活跃的安全问题
     */
    List<SecurityQuestion> getAllActiveSecurityQuestions();
    
    /**
     * 获取用户的安全问题
     */
    List<SecurityQuestion> getUserSecurityQuestions(String username);
    
    /**
     * 验证安全问题答案
     */
    boolean verifySecurityAnswers(SecurityAnswersRequest request);
    
    /**
     * 重置密码
     */
    String resetPassword(PasswordResetRequest request);
    
    /**
     * 设置用户安全问题答案
     */
    boolean setUserSecurityAnswers(Integer userId, List<com.atguigu.schedule.pojo.SecurityQuestionRequest> securityQuestions);
}
